Skip to content

Conversation

@Shironex
Copy link
Collaborator

@Shironex Shironex commented Jan 15, 2026

Summary by CodeRabbit

  • New Features

    • Added customizable prompts across all AI-powered features via settings.
    • Added bulk verification for features awaiting approval.
    • Added GPT-5.2 Codex model variants for Cursor integration.
  • Improvements

    • Enhanced ideation dashboard with improved UI and discard-all capability.
    • Usage popover now displays provider-specific statistics and status.
    • Optimized bulk operations with batched processing.
  • Bug Fixes

    • Fixed cross-platform Claude usage command compatibility.
    • Corrected cursor model ID prefixing logic.

✏️ Tip: You can customize this high-level summary in your review settings.

- Added a helper function to map priority levels to badge variants in the IdeationDashboard.
- Improved UI elements in SuggestionCard for better spacing and visual hierarchy.
- Updated PromptCategoryGrid and PromptList components with enhanced hover effects and layout adjustments for a more responsive design.
- Refined button styles and interactions for better user experience across components.

These changes aim to improve the overall usability and aesthetics of the ideation view.
@Shironex Shironex self-assigned this Jan 15, 2026
@Shironex Shironex added Enhancement Improvements to existing functionality or UI. scope: ui UI/UX changes, layout, visual or interaction behavior. labels Jan 15, 2026
@Shironex Shironex changed the base branch from main to v0.12.0rc January 15, 2026 22:02
@coderabbitai
Copy link

coderabbitai bot commented Jan 15, 2026

Caution

Review failed

The pull request is closed.

📝 Walkthrough

Walkthrough

This PR centralizes prompt customization throughout the codebase by introducing a dynamic system that retrieves and applies customizable prompts via getPromptCustomization(), replacing hardcoded prompts across multiple routes and services. It also expands SettingsService integration, adds bulk verification for waiting_approval items, enhances UI components for selection and ideation, and introduces comprehensive type definitions for new prompt categories.

Changes

Cohort / File(s) Summary
Centralized Prompt Customization - Core
apps/server/src/lib/settings-helpers.ts
Expanded getPromptCustomization return type to include eight new prompt categories: commitMessage, titleGeneration, issueValidation, ideation, appSpec, contextDescription, suggestions, taskExecution, each resolved via corresponding mergeXPrompts functions.
SettingsService Integration - Route Updates
apps/server/src/index.ts, apps/server/src/routes/features/index.ts, apps/server/src/routes/features/routes/generate-title.ts
Added SettingsService parameter to createFeaturesRoutes() and createGenerateTitleHandler() to enable dynamic prompt retrieval; refactored title generation to use customized system prompts.
Dynamic Prompts - App Spec Routes
apps/server/src/routes/app-spec/generate-spec.ts, apps/server/src/routes/app-spec/generate-features-from-spec.ts
Replaced hardcoded prompts with dynamic prompts via getPromptCustomization() for spec generation and feature extraction; removed static getStructuredSpecPromptInstruction export.
Dynamic Prompts - Context Routes
apps/server/src/routes/context/routes/describe-file.ts, apps/server/src/routes/context/routes/describe-image.ts
Integrated getPromptCustomization() to source file and image description prompts from centralized settings instead of hardcoded templates.
Dynamic Prompts - GitHub & Suggestions
apps/server/src/routes/github/routes/validate-issue.ts, apps/server/src/routes/github/routes/validation-schema.ts, apps/server/src/routes/suggestions/generate-suggestions.ts
Migrated issue validation and suggestion prompts to use getPromptCustomization(); removed ISSUE_VALIDATION_SYSTEM_PROMPT constant from validation-schema.
Service Enhancements - Auto Mode
apps/server/src/services/auto-mode-service.ts
Expanded buildFeaturePrompt(), buildPipelineStepPrompt(), and buildTaskPrompt() signatures to accept centralized task execution prompts; integrated getPromptCustomization() to drive feature execution and pipeline flows.
Service Enhancements - Ideation
apps/server/src/services/ideation-service.ts
Updated buildIdeationSystemPrompt() and buildSuggestionsSystemPrompt() to accept a basePrompt parameter and retrieve customized prompts via getPromptCustomization().
Batch Processing - Features
apps/server/src/routes/features/routes/bulk-delete.ts, apps/server/src/routes/features/routes/bulk-update.ts
Implemented sequential batch processing (batch size 20) for feature deletions and updates; replaced parallel Promise.all with iterative batch execution and result aggregation.
Board View - Selection Target
apps/ui/src/components/views/board-view.tsx, apps/ui/src/components/views/board-view/hooks/use-selection-mode.ts, apps/ui/src/components/views/board-view/hooks/index.ts
Introduced SelectionTarget type and state management to track selection mode ('backlog', 'waiting_approval', or null); added handleBulkVerify for verifying waiting_approval items.
Board View - KanbanBoard Components
apps/ui/src/components/views/board-view/kanban-board.tsx, apps/ui/src/components/views/board-view/components/kanban-card/kanban-card.tsx
Added selectionTarget prop and updated selection-toggle buttons to support both backlog and waiting_approval columns; made card selectability dynamic based on current target.
Board View - Selection Action Bar
apps/ui/src/components/views/board-view/components/selection-action-bar.tsx
Introduced SelectionActionMode type and onVerify callback; added mode-conditional UI (Edit/Delete for backlog, Verify for waiting_approval) and confirmation dialogs.
Ideation UI - Dashboard & Views
apps/ui/src/components/views/ideation-view/components/ideation-dashboard.tsx, apps/ui/src/components/views/ideation-view/index.tsx, apps/ui/src/components/views/ideation-view/components/prompt-category-grid.tsx, apps/ui/src/components/views/ideation-view/components/prompt-list.tsx
Enhanced dashboard with bulk discard functionality, pluralization helpers, priority-to-badge mapping; refactored card layouts with improved visual hierarchy and state-driven styling; added discard confirmation flow.
Ideation UI - Styling
apps/ui/src/components/usage-popover.tsx
Introduced tab-aware info resolver to compute per-tab provider icon, percentage, and stale state; updated progress bar and status color logic to be tab-scoped.
Settings UI - Prompt Customization
apps/ui/src/components/views/settings-view/prompts/components.tsx, apps/ui/src/components/views/settings-view/prompts/prompt-customization-section.tsx, apps/ui/src/components/views/settings-view/prompts/tab-configs.ts, apps/ui/src/components/views/settings-view/prompts/types.ts
Added new UI components for prompt field management (PromptField, PromptFieldList, Banner); refactored prompt customization section to use data-driven tab configuration with TAB_CONFIGS; introduced type definitions for tab and field configuration.
Prompt Types & Defaults
libs/types/src/prompts.ts, libs/types/src/index.ts, libs/prompts/src/defaults.ts, libs/prompts/src/index.ts, libs/prompts/src/merge.ts
Added seven new prompt category interfaces (TitleGenerationPrompts, IssueValidationPrompts, IdeationPrompts, AppSpecPrompts, ContextDescriptionPrompts, SuggestionsPrompts, TaskExecutionPrompts) with resolved variants; extended PromptCustomization; introduced corresponding merge utilities.
Model Support
libs/types/src/cursor-models.ts, apps/ui/src/components/views/board-view/shared/model-constants.ts
Added four GPT-5.2 Codex model variants to CursorModelId and CURSOR_MODEL_MAP; introduced new model group; fixed cursor-model id prefixing to avoid double-prefixing.
Tests
apps/server/tests/unit/providers/claude-provider.test.ts, apps/server/tests/unit/services/auto-mode-service-planning.test.ts, apps/server/tests/unit/services/claude-usage-service.test.ts
Added explicit model parameter to test queries; updated buildFeaturePrompt() calls with new taskExecutionPrompts parameter; unified cross-platform PTY-based approach, removed Mac-specific test variants.

Sequence Diagram(s)

sequenceDiagram
    participant Route as Route Handler
    participant Settings as SettingsService
    participant Helper as getPromptCustomization
    participant Merge as mergeXPrompts
    participant Model as LLM Provider

    Route->>Helper: getPromptCustomization(settingsService, '[Category]')
    Helper->>Settings: Fetch custom prompts for category
    Settings-->>Helper: CustomPrompt or undefined
    Helper->>Merge: mergeXPrompts(customPrompts)
    Merge-->>Helper: ResolvedXPrompts with all fields
    Helper-->>Route: Resolved prompt object
    Route->>Route: Extract desired prompt from object
    Route->>Model: Send request with customized prompt
    Model-->>Route: Response
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~75 minutes

Possibly related PRs

Poem

🐰 Prompts now flow from settings deep,
No hardcoded strings to keep!
Dynamic templates through the code,
Each route and service finds its load.
Batch by batch, selection grows—
The customization pipeline shows! 🚀

✨ Finishing touches
  • 📝 Generate docstrings


📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 78e5ddb and 52cc82f.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (40)
  • apps/server/src/index.ts
  • apps/server/src/lib/settings-helpers.ts
  • apps/server/src/routes/app-spec/generate-features-from-spec.ts
  • apps/server/src/routes/app-spec/generate-spec.ts
  • apps/server/src/routes/context/routes/describe-file.ts
  • apps/server/src/routes/context/routes/describe-image.ts
  • apps/server/src/routes/features/index.ts
  • apps/server/src/routes/features/routes/bulk-delete.ts
  • apps/server/src/routes/features/routes/bulk-update.ts
  • apps/server/src/routes/features/routes/generate-title.ts
  • apps/server/src/routes/github/routes/validate-issue.ts
  • apps/server/src/routes/github/routes/validation-schema.ts
  • apps/server/src/routes/suggestions/generate-suggestions.ts
  • apps/server/src/services/auto-mode-service.ts
  • apps/server/src/services/ideation-service.ts
  • apps/server/tests/unit/providers/claude-provider.test.ts
  • apps/server/tests/unit/services/auto-mode-service-planning.test.ts
  • apps/server/tests/unit/services/claude-usage-service.test.ts
  • apps/ui/src/components/usage-popover.tsx
  • apps/ui/src/components/views/board-view.tsx
  • apps/ui/src/components/views/board-view/components/kanban-card/kanban-card.tsx
  • apps/ui/src/components/views/board-view/components/selection-action-bar.tsx
  • apps/ui/src/components/views/board-view/hooks/index.ts
  • apps/ui/src/components/views/board-view/hooks/use-selection-mode.ts
  • apps/ui/src/components/views/board-view/kanban-board.tsx
  • apps/ui/src/components/views/board-view/shared/model-constants.ts
  • apps/ui/src/components/views/ideation-view/components/ideation-dashboard.tsx
  • apps/ui/src/components/views/ideation-view/components/prompt-category-grid.tsx
  • apps/ui/src/components/views/ideation-view/components/prompt-list.tsx
  • apps/ui/src/components/views/ideation-view/index.tsx
  • apps/ui/src/components/views/settings-view/prompts/components.tsx
  • apps/ui/src/components/views/settings-view/prompts/prompt-customization-section.tsx
  • apps/ui/src/components/views/settings-view/prompts/tab-configs.ts
  • apps/ui/src/components/views/settings-view/prompts/types.ts
  • libs/prompts/src/defaults.ts
  • libs/prompts/src/index.ts
  • libs/prompts/src/merge.ts
  • libs/types/src/cursor-models.ts
  • libs/types/src/index.ts
  • libs/types/src/prompts.ts

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Shironex Shironex merged commit df23c9e into v0.12.0rc Jan 15, 2026
5 of 6 checks passed
@Shironex Shironex deleted the feat/improve-ideation-view branch January 15, 2026 22:03
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @Shironex, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the application's AI capabilities by introducing a robust and centralized prompt customization framework. It also delivers substantial improvements to the user experience in key areas like ideation and feature management, alongside performance gains for bulk operations and broader AI model compatibility.

Highlights

  • Extensive AI Prompt Customization: A comprehensive system has been introduced to allow customization of AI prompts across a wide range of features, including auto-mode planning, agent interactions, backlog planning, feature enhancement, commit message generation, title generation, GitHub issue validation, ideation, app specification, context description, suggestions, and task execution. This centralizes prompt management and offers fine-grained control over AI behavior.
  • Enhanced Ideation View UI/UX: The ideation dashboard has received significant user interface and experience improvements. This includes redesigned suggestion cards with better visual feedback, enhanced tag filtering, and new bulk actions for accepting or discarding multiple generated ideas, making the brainstorming process more efficient and intuitive.
  • Bulk Feature Management: New bulk actions have been added to the feature board, allowing users to perform operations on multiple features simultaneously. Specifically, bulk verification is now supported for features in the 'waiting_approval' state, and bulk deletion/update operations have been optimized for efficiency through batch processing.
  • Modular Prompt Settings Interface: The settings interface for prompt customization has been refactored into a modular and extensible architecture. This new structure uses reusable UI components and a centralized configuration, simplifying the addition and management of new customizable prompt categories.
  • Expanded AI Model Support: Support for new Cursor GPT-5.2 Codex models has been integrated, providing users with a broader selection of advanced AI models for various tasks within the application.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request significantly enhances the user interface and experience of the ideation view. The changes introduce a more polished and modern design across the ideation dashboard, prompt category grid, and prompt list. Key improvements include richer hover effects, better visual hierarchy, more descriptive statuses, and consistent use of the design system's theme. The code quality is high, and the changes are well-implemented. I have one suggestion to improve type safety in the ideation-dashboard.tsx component.

Comment on lines +25 to +33
):
| 'default'
| 'secondary'
| 'destructive'
| 'outline'
| 'success'
| 'warning'
| 'error'
| 'info' => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The return type for getPriorityVariant is broader than the actual values returned by the function. It includes variants like 'default', 'destructive', 'outline', and 'success' which are not part of the function's output. To improve type safety and make the function's contract more precise, it's better to tighten the return type to only include the variants that can actually be returned: 'error', 'warning', 'info', and 'secondary'.

): 'error' | 'warning' | 'info' | 'secondary' => {

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement Improvements to existing functionality or UI. scope: ui UI/UX changes, layout, visual or interaction behavior.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants